home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / pine / imap_archive / text0012.txt < prev    next >
Encoding:
Text File  |  1993-07-02  |  14.1 KB  |  277 lines

  1. Chris Newman @ CMU writes:
  2. > IMAP2 is a protocol for remote mailstore access (from what I
  3. > understand).  Anything which isn't "remote mailstore access" should be
  4. > placed in a separate protocol.  The idea of placing a message in a
  5. > mailstore to be "picked up for delivery" seems like a very backwards
  6. > way to do mail submission -- why not contact the transport agent
  7. > directly with an appropriate simple protocol (e.g. SMTP)?
  8.  
  9. I'm not suggesting that IMAP2 take over the role of SMTP, just that it
  10. provide facilities to (at least) submit the draft messages it manages. If
  11. it doesn't have draft message management, there is less reason to support
  12. submission. However, integrating retrieval and submission may open the way
  13. for extra functions in the future, e.g. marking messages as 'replied-to'.
  14. It's what I'd call an 'enabling step' if I was asking my boss to fund it.
  15.  
  16. A lot of people think that 'remote mailstore access' these days means
  17. far more than just retrieval. X.400 P7 is IMHO a good _model_ (and believe
  18. me, I have read the standards), even if details of the implementation are
  19. still flawed. (Half the problem seems to be that people don't understand
  20. ASN.1, which is strange, as it is used in a number of Internet protocols.)
  21.  
  22. > I'm used to MUAs that generate the envelope from the headers
  23. > automatically
  24.  
  25. Fine. If an IMAP2-managed draft message is 'ready for sending', without
  26. user intervention, it makes even less sense to _require_ the MUA to fetch
  27. it and submit it.
  28.  
  29. > But then a mailstore isn't suitable for storing of an envelope --
  30. > only for storage of RFC-822 and MIME messages.
  31.  
  32. Why Internet only? My 'mailstore' contains messages from X.400, BITNET,
  33. Internet and Greybook hosts. The fact that they are all converted to one
  34. format (Greybook) is something that I, as a user, don't need to be aware
  35. of. Concrete example: we are looking at providing IMAP2 access to an X.400
  36. message store.
  37.  
  38. I think at least one non-contentious point has come out of this discussion
  39. though: that (a) central draft message management is often necessary, and
  40. (b) IMAP2, with its SEARCH and FETCH commands and mailbox management, is
  41. ideal for draft message management. Would it be possible to have 'DRAFT'
  42. and 'SENT' system flags, to be modified only by the IMAP2 server?
  43. From imap-request@cac.washington.edu  Fri Sep  4 09:58:06 1992
  44. Received: from mx1.cac.washington.edu by akbar.cac.washington.edu
  45.     (5.65/UW-NDC Revision: 2.27 ) id AA17975; Fri, 4 Sep 92 09:58:06 -0700
  46. Received: by mx1.cac.washington.edu
  47.     (5.65/UW-NDC Revision: 2.27 ) id AA01819; Fri, 4 Sep 92 09:58:00 -0700
  48. Errors-To: imap-request@cac.washington.edu
  49. Sender: imap-request@cac.washington.edu
  50. Received: from PO5.ANDREW.CMU.EDU by mx1.cac.washington.edu
  51.     (5.65/UW-NDC Revision: 2.27 ) id AA01813; Fri, 4 Sep 92 09:57:58 -0700
  52. Received: by po5.andrew.cmu.edu (5.54/3.15) id <AA13884> for imap@cac.washington.edu; Fri, 4 Sep 92 12:57:44 EDT
  53. Received: via switchmail; Fri,  4 Sep 1992 12:57:42 -0400 (EDT)
  54. Received: from nifty.andrew.cmu.edu via qmail
  55.           ID </afs/andrew.cmu.edu/service/mailqs/testq0/QF.oedtIci00WA786B05s>;
  56.           Fri,  4 Sep 1992 12:56:09 -0400 (EDT)
  57. Received: via niftymail; Fri, 4 Sep 1992 12:56:05 -0400 (EDT)
  58. Date: Fri, 4 Sep 1992 12:56:02 -0400 (EDT)
  59. From: Chris Newman <chrisn+@cmu.edu>
  60. Subject: re: IMAP2 futures?
  61. To: A Grant <AG129@phx.cam.ac.uk>, imap@cac.washington.edu
  62. In-Reply-To: <A63E72C8E2386A80@UK.AC.CAMBRIDGE.PHOENIX>
  63. References: <A63E72C8E2386A80@UK.AC.CAMBRIDGE.PHOENIX>
  64. Message-Id: <715625762.1430.0@nifty.andrew.cmu.edu>
  65.  
  66. In message <A63E72C8E2386A80@UK.AC.CAMBRIDGE.PHOENIX>, 
  67.  A Grant <AG129@phx.cam.ac.uk> writes:
  68. >Chris Newman @ CMU writes:
  69. >I'm not suggesting that IMAP2 take over the role of SMTP, just that it
  70. >provide facilities to (at least) submit the draft messages it manages.
  71.  
  72. Ok, suppose I actually wanted to implement some sort of submission via
  73. IMAP.  There are a few ways to do this:
  74.  
  75. 1) Put part or all of the mail transport agent (MTA) in the IMAP server.
  76. This is clearly a *bad thing* as it makes IMAP many times more
  77. complex, and makes it less portable (particularly to places where
  78. "standard" mail transport systems aren't used).
  79.  
  80. 2) Have the IMAP server contact the MTA and submit the message itself.
  81. This causes the IMAP server to have an external dependancy on another
  82. machine/service.  At CMU, we've found this to be a *very bad thing*.
  83. Our system has so many inter-dependancies that if one thing goes down,
  84. it usually takes the whole system with it.  Our current design goal
  85. for replacement systems it to have each service as independant as
  86. possible.
  87.  
  88. 3) Have the MTA pick up the message directly from the mailstore.  This
  89. requires the MTA to understand the mailstore format(s) and to run on
  90. the IMAP server.  So this is a *bad thing* as it makes the MTA more
  91. complex (and less portable), and makes the IMAP server harder to
  92. manage and maintain (particularly at large sites with multiple
  93. servers).
  94.  
  95. 4) Have the MTA pick up the messages via IMAP.  This requires the MTA
  96. to understand IMAP protocol, have a dependancy on the IMAP server, and
  97. is probably less efficient than sending the message directly to the
  98. MTA from the client.  So this is also a *bad thing*.
  99.  
  100. I can't think of any other ways to implement submission via IMAP, and
  101. all of these are bad solutions.  Since the client needs to understand
  102. whatever mail submission protocol (e.g. SMTP) is used anyway, it's
  103. best to keep the server simple (as Mark advocates).  The tiny cost of
  104. fetching a draft message from the server for submission by the client
  105. is nothing compared to the damage that adding submission to the IMAP
  106. server would cause the protocol's simplicity, portability, and
  107. manageability.
  108.  
  109. >If it doesn't have draft message management, there is less reason to support
  110. >submission. However, integrating retrieval and submission may open the way
  111. >for extra functions in the future, e.g. marking messages as 'replied-to'.
  112. >It's what I'd call an 'enabling step' if I was asking my boss to fund it.
  113.  
  114. IMAP already has facilities for flag management in a mailstore.  A
  115. client which wants such bells and whistles merely needs to set the
  116. flags in the server after it submits the mail.  There's no need to
  117. "integrate" retrieval and submission to get such features.
  118.  
  119. >I think at least one non-contentious point has come out of this discussion
  120. >though: that (a) central draft message management is often necessary, and
  121. >(b) IMAP2, with its SEARCH and FETCH commands and mailbox management, is
  122. >ideal for draft message management. Would it be possible to have 'DRAFT'
  123. >and 'SENT' system flags, to be modified only by the IMAP2 server?
  124.  
  125. I would classify draft management as a "nice" feature.  Something
  126. worth doing only if the implementation is trivial.  If draft
  127. management can be done using APPEND (and perhaps the existing IMAP
  128. flag support), it's worth doing, otherwise I'd prefer keeping the
  129. server simple.
  130.  
  131.         - Chris
  132.         Computing Services, Carnegie Mellon University
  133. From imap-request@cac.washington.edu  Fri Sep  4 10:43:26 1992
  134. Received: from mx1.cac.washington.edu by akbar.cac.washington.edu
  135.     (5.65/UW-NDC Revision: 2.27 ) id AA19412; Fri, 4 Sep 92 10:43:26 -0700
  136. Received: by mx1.cac.washington.edu
  137.     (5.65/UW-NDC Revision: 2.27 ) id AA02429; Fri, 4 Sep 92 10:43:22 -0700
  138. Errors-To: imap-request@cac.washington.edu
  139. Sender: imap-request@cac.washington.edu
  140. Received: from snow.csi.cam.ac.uk by mx1.cac.washington.edu
  141.     (5.65/UW-NDC Revision: 2.27 ) id AA02419; Fri, 4 Sep 92 10:43:20 -0700
  142. Received: from phx.cam.ac.uk by ppsw1.cam.ac.uk 
  143.           with NIFTP (PP-6.0) as ppsw.cam.ac.uk id <21785-2@ppsw1.cam.ac.uk>;
  144.           Fri, 4 Sep 1992 18:42:35 +0100
  145. Date: Fri, 04 Sep 92 18:42:25 BST
  146. From: A Grant <AG129@phx.cam.ac.uk>
  147. To: imap@cac.washington.edu
  148. Subject: Draft messages etc. (was IMAP2 futures)
  149. Message-Id: <A63ECC9FB8F80C40@UK.AC.CAMBRIDGE.PHOENIX>
  150. In-Reply-To: <715625762.1430.0@nifty.andrew.cmu.edu>
  151.  
  152. > The tiny cost of
  153. > fetching a draft message from the server for submission by the client
  154. > is nothing compared to the damage that adding submission to the IMAP
  155. > server would cause the protocol's simplicity, portability, and
  156. > manageability.
  157.  
  158. As an Australian working in the UK I know that data traffic does not come
  159. for free. I can see myself doing IMAP2 from Oz and wanting to forward the
  160. messages in my inbox to UK colleagues, based on contents of header fields.
  161. Retrieving 10Mb MIME video messages from half way round the world and
  162. sending them back again would be gross!
  163.  
  164. I am not convinced the 'damage' is significant. Good application-layer
  165. protocols are extensible and modular. If IMAP2 is so hairy that adding an
  166. optional submission 'subset' to it involves major surgery, I'm not sure it
  167. has a future. Thankfully, I think it _is_ able to be extended nicely.
  168.  
  169. I see that you (implicitly) accept that there may be a need for IMAP2 to
  170. manage draft messages. We can't be the only potential IMAP2 users who see
  171. transparent distributed file systems as a long way off.
  172.  
  173. Maybe I'm overestimating the problem. I'd really appreciate it if anyone
  174. who's using IMAP2 in a large-scale heterogenous environment could share
  175. their experiences.
  176. From imap-request@cac.washington.edu  Fri Sep  4 10:51:45 1992
  177. Received: from mx1.cac.washington.edu by akbar.cac.washington.edu
  178.     (5.65/UW-NDC Revision: 2.27 ) id AA19637; Fri, 4 Sep 92 10:51:45 -0700
  179. Received: by mx1.cac.washington.edu
  180.     (5.65/UW-NDC Revision: 2.27 ) id AA02533; Fri, 4 Sep 92 10:51:41 -0700
  181. Errors-To: imap-request@cac.washington.edu
  182. Sender: imap-request@cac.washington.edu
  183. Received: from nexus.yorku.ca by mx1.cac.washington.edu
  184.     (5.65/UW-NDC Revision: 2.27 ) id AA02527; Fri, 4 Sep 92 10:51:39 -0700
  185. Received: from localhost ([127.0.0.1]) by nexus.yorku.ca with SMTP id <9217>; Fri, 4 Sep 1992 13:51:27 -0400
  186. To: A Grant <AG129@phx.cam.ac.uk>
  187. To: imap@cac.washington.edu
  188. Subject: Re: Draft messages etc. (was IMAP2 futures) 
  189. In-Reply-To: Your message of "Fri, 04 Sep 92 13:42:25 EDT."
  190.              <A63ECC9FB8F80C40@UK.AC.CAMBRIDGE.PHOENIX> 
  191. Date:     Fri, 4 Sep 1992 13:51:19 -0400
  192. From: davecb@nexus.yorku.ca
  193. Message-Id: <92Sep4.135127edt.9217@nexus.yorku.ca>
  194.  
  195.   **Any** protocol get hairy when it tries to deal with
  196. any two distinct kind of things.
  197.   SMTP has a serious problem because of the different time-behavior
  198. of HELO/RCPT/MAIL/VRFY versus DATA: DATA takes variable and unbounded time.
  199. The others take fixed and mutually-predictable times.
  200.  
  201.   As a result even simple things get arbitrarily hard easily.
  202. (My hack is to read the data part line by line, with timeouts,
  203. and make sure every message uses a **separate process**. Otherwise
  204. I can lock up all of mail waiting for a single ill-structured message)
  205.  
  206. --dave
  207. From imap-request@cac.washington.edu  Fri Sep  4 12:20:06 1992
  208. Received: from mx1.cac.washington.edu by akbar.cac.washington.edu
  209.     (5.65/UW-NDC Revision: 2.27 ) id AA22019; Fri, 4 Sep 92 12:20:06 -0700
  210. Received: by mx1.cac.washington.edu
  211.     (5.65/UW-NDC Revision: 2.27 ) id AA03396; Fri, 4 Sep 92 12:19:55 -0700
  212. Errors-To: imap-request@cac.washington.edu
  213. Sender: imap-request@cac.washington.edu
  214. Received: from Ikkoku-Kan.Panda.COM by mx1.cac.washington.edu
  215.     (5.65/UW-NDC Revision: 2.27 ) id AA03390; Fri, 4 Sep 92 12:19:48 -0700
  216. Received: from localhost by Ikkoku-Kan.Panda.COM
  217.     (NeXT-1.0 (From Sendmail 5.52)/UW-NDC/Panda Revision: 2.27.MRC ) id AA00915; Fri, 4 Sep 92 12:19:42 PDT
  218. Date: Fri, 4 Sep 1992 11:57:59 -0700 (PDT)
  219. From: Mark Crispin <MRC@panda.com>
  220. Subject: re: Draft messages etc. (was IMAP2 futures)
  221. To: A Grant <AG129@phx.cam.ac.uk>
  222. Cc: IMAP Interest List <IMAP@cac.washington.edu>
  223. In-Reply-To: <A63ECC9FB8F80C40@UK.AC.CAMBRIDGE.PHOENIX>
  224. Message-Id: <MailManager.715633079.454.mrc@Ikkoku-Kan.Panda.COM>
  225. Mime-Version: 1.0
  226. Content-Type: TEXT/PLAIN; charset=US-ASCII
  227.  
  228. I probably have more experience with international IMAP (and IMAP over slow
  229. speed links -- I'm on a SLIP line from my NeXT at home right now) than anyone
  230. else.
  231.  
  232. I certainly don't want my drafts sent over the SLIP link to the IMAP server.
  233. I have a perfectly good local filesystem for my drafts.  Nor do I even want my
  234. outgoing mail going to the IMAP server.  I have a perfectly good mailer daemon
  235. on my machine that can do this pain and suffering in the background.  I
  236. especially don't want my outgoing mail making two international hops when I am
  237. sending domestic mail, just because I happen to be talking to a foreign IMAP
  238. server.
  239.  
  240. I'd undoubtably feel differently if my primary machine was my Mac (or a PC)
  241. instead of my NeXT.  I trust the Mac filesystem much less than the NeXT, and
  242. background mailers on a Mac are still more fantasy than reality.  Yet, even on
  243. the Mac, some of these principles apply.  I want my outgoing mail going to a
  244. domestic machine regardless of whether or not I am talking to a foreign IMAP
  245. server.
  246.  
  247. That's part of the problem -- different individuals in different environments
  248. have different needs.  How do we solve the needs of one group without causing
  249. trouble to other individuals?
  250.  
  251. The problem with adding an `optional submission subset' to IMAP is:
  252.  . it will make IMAP hairy -- we seek to avoid this
  253.  . it will create applications which *only* use the `optional' submission
  254.    mechanism.  This is a REAL threat -- the POP world is already filled with
  255.    POP applications which DO NOT WORK unless the POP server supports the
  256.    unofficial and undocumented `optional' submission mechanism of Berkeley
  257.    popper.
  258.  
  259. The bottom line is: `simple solutions' usually create new problems.  We're not
  260. telling you "no, you can't do what you want"; we're telling you "no, your
  261. proposed solution is not the right one."  We agree with all your stated needs
  262. completely.  It just doesn't belong in IMAP.
  263.  
  264. On the other hand, it is undoubtably related to IMAP, and belongs as part of a
  265. sister protocol to IMAP.  We have already identified Mail Management as one
  266. sister protocol.  I think that authenticated transport is probably going to be
  267. part of a different sister.  Let's start thinking about these siblings and not
  268. allow IMAP's focus to be blurred.
  269.  
  270. By the way, I think that a good deal of the problem with the 10MB MIME video
  271. message forwarding can be solved by appropriate use of external-data in MIME.
  272. It seems that people have realized that sending a 1000 person mailing list a
  273. 10MB video image, as opposed to a pointer, doesn't scale too well...  ;-)  So
  274. I don't think that example will come up in reality.
  275.  
  276.  
  277.